package model.components.nodes.node.virtual;

import model.components.nodes.node.Node;
import model.components.nodes.node.sdn.SdnNode;

public class VirtualNode extends Node
{
	private int startingDate;
	public int getStartingDate(){ return startingDate; }
	public void setStartingDate( int startingDate ){ this.startingDate = startingDate; }
	
	private int endingDate;
	public int getEndingDate(){ return endingDate; }
	public void setEndingDate( int endingDate ){ this.endingDate = endingDate; }
	
	private int lifeTime;
	public int getLifeTime(){ return lifeTime; }
	public void setLifeTime( int lifeTime ){ this.lifeTime = lifeTime; }
	
	private SdnNode sdnNode = null;
	public SdnNode getSdnNode(){ return sdnNode; }
	public void setSdnNode( SdnNode sdnNode ){ this.sdnNode = sdnNode; }
	
	private int cpuPrice;
	public int getCPUprice(){ return cpuPrice; }
	public void setCPUprice( int cpuPrice ){ this.cpuPrice = cpuPrice; }
	
	private int ramPrice;
	public int getRAMprice(){ return ramPrice; }
	public void setRAMprice( int ramPrice ){ this.ramPrice = ramPrice; }

	private int storagePrice;
	public int getStoragePrice(){ return storagePrice; }
	public void setStoragePrice( int storagePrice ){ this.storagePrice = storagePrice; }
	
	public VirtualNode( String networkName, int startingDate, int endingDate, String namePrefix, int number, String type, String os, int cpu, int ram, String greyIcon, String greenIcon, String yellowIcon, String redIcon )
	{
		super( networkName, namePrefix, number, type, os, cpu, ram, greyIcon, greenIcon, yellowIcon, redIcon );
		
		this.setStartingDate( startingDate );
		this.setEndingDate( endingDate );
		this.setLifeTime( endingDate - startingDate );
	}
	
	@Override
	public VirtualNode getCopy()
	{
		return null;
	}

}
